草庐IT

TypeScript 基础语法

全部标签

javascript - typescript 如何在foreach循环中访问组件变量?

嘿,有人能告诉我如何在foreach循环中访问组件变量吗?这是我的PlunkerpublictestVariable:number;test(){console.log('fired');varx=[1,2,3,4];x.forEach(function(e){this.testVariable=e;})console.log(this.testVariable);} 最佳答案 如果你使用function(e),它里面的this会引用函数的作用域而不是类。改用ArrowFunction(或FatArrow):x.forEach((e

javascript - 语法错误 : Unexpected token const { in node. js

我是node.js的新手。我收到语法错误:Unexpectedtoken{inmynode.jsapplication我在Windows764位操作系统上使用v4.5.5。const{^SyntaxError:Unexpectedtoken{atexports.runInThisContext(vm.js:53:16)atModule._compile(module.js:373:25)atObject.Module._extensions..js(module.js:416:10)atModule.load(module.js:343:32)atFunction.Module._lo

javascript - 我什么时候应该使用语法 "(function() {...})();"?

我的查询用于“(function(){...})();”的情况鉴于我不是插件。例如“http://piecesofrakesh.blogspot.com/2009/03/downloading-javascript-files-in.html”(function(){vars=["/javascripts/script1.js","/javascripts/script2.js"];varsc="script",tp="text/javascript",sa="setAttribute",doc=document,ua=window.navigator.userAgent;for(va

javascript - TypeScript setTimeout 循环传递此错误

尝试在TypeScript中创建一个计时器循环:timeout(){setTimeout(function(){console.log('Test');this.timeout();},1000/60);}但在第一个循环正常工作后,我得到了这个错误:“未捕获的类型错误:this.timeout不是一个函数”。似乎this变量在初始循环后不存在。有什么想法吗? 最佳答案 因为您的this没有引用该对象。每个函数都有它自己的this。所以你的this是由setTimeout()中的匿名函数定义的。为了使您的程序正常运行,您需要在超时之前

javascript - 在一行代码中用扩展语法替换数组条目?

这个问题在这里已经有了答案:Replaceelementatspecificpositioninanarraywithoutmutatingit(9个回答)关闭上个月。我正在使用...展开语法替换react状态数组中的项目。这有效:letnewImages=[...this.state.images]newImages[4]=updatedImagethis.setState({images:newImages})是否可以在一行代码中做到这一点?是这样的吗?(这显然行不通...)this.setState({images:[...this.state.images,[4]:update

javascript - 你怎么称呼这个 JavaScript 语法,所以我可以研究它?

1)在下面的代码中,使gameOfLive成为变量而不仅仅是functiongameOfLife()背后的原因是什么?2)什么是gol?它看起来像一个数组,但我不熟悉语法或它的名称。我正在研究http://sixfoottallrabbit.co.uk/gameoflife/if(!window.gameOfLife)vargameOfLife=function(){vargol={body:null,canvas:null,context:null,grids:[],mouseDown:false,interval:null,control:null,moving:-1,clickT

javascript - Protractor + cucumber + typescript 失败

节点版本:4.4.5Protractor版本:3.3.0浏览器:chrome操作系统和版本Win7我正在尝试用typescript编写Protractor+cucumber组合。我的项目有一个简单的功能,可以打开页面并输入三个字段。我无法运行Protractor。它让我低于错误。$protractorprotractor.conf.js[13:40:55]I/hosted-Usingtheseleniumserverathttp://localhost:4444/wd/hub[13:40:55]I/launcher-Running1instancesofWebDriver⨯Unable

javascript - Angular 更新后如何更正语法

我想升级到lastedstableangularbranch1.4.7。我来自1.2.13。我的项目中有一个针对应用程序定制的angular-leaflet-directive。我想弄清楚如何更改函数中的语法,以免引发错误。控制台消息Error:[$parse:syntax]SyntaxError:Token'.50465'isanunexpectedtokenatcolumn8oftheexpression[markers.50465]startingat[.50465].http://errors.angularjs.org/1.4.7/$parse/syntax?p0=.5046

javascript - Webpack resolve.root 和 TypeScript 加载器

我们的项目使用webpackresolve.root选项来导入具有绝对路径的模块。(避免像../../../module这样的东西)在目前的状态下,该项目正在使用babel-loader,它工作得很好。我的任务是将应用程序迁移到Angular2。因此,我目前正在过渡到TypeScript。不知何故,ts-loader似乎无法与webpack配置的resolve.root选项结合使用。webpack.config.js的例子resolve:{root:[path.resolve('./node_modules'),path.resolve('./app'),path.resolve('.

javascript - TypeScript - 是否有一个选项可以禁止在除 bool 值之外的任何内容之前使用“!”?

我知道这可能是一个典型的javascript问题,但我发现自己经常使用:if(!something){//...}在TypeScript中验证此something不是undefined或null。这很容易出错!当用于number时,“0”将匹配,当用于enum时,第一项也将匹配(默认情况下,第一项的值为“0”")!有没有办法在TypeScript中处理这个问题?有没有办法配置TypeScript以禁止在除boolean(和any)之外的任何内容前面使用感叹号?这种配置有意义还是我遗漏了一些微不足道的东西?应该:if(something===null||something===undef